Systems and methods for game-based modification of communications functionality

ABSTRACT

Techniques for gamifying real-time network communications between users. In one implementation, a video puzzle based may be created based on scrambling a live video stream from a first user. The video puzzle may be displayed to a second user in communication with the first user. Responsive to a solving of the video puzzle by the second user, communications functionality between the first user and second user may be modified. For example, a fee assessed by a chat service or other facilitator for hosting the communications between the first user and second user may be waived or reduced.

BACKGROUND

Gamification is the use of game thinking and game mechanics in non-gamecontexts to engage users in solving problems. Gamification has beenshown to improve user engagement, enjoyment, and retention. However,gamification has yet to be applied effectively in facilitating real-timecommunications between users.

SUMMARY

Some or all of the above deficiencies may be addressed by certainimplementations of the disclosed technology. Certain implementationsinclude techniques for gamifying real-time network communicationsbetween users.

According to an example implementation, a method is provided. The methodmay include receiving a live video stream. The live video stream may bereceived from a device associated with a first user. The method mayfurther include scrambling the live video stream. Scrambling the livevideo stream may include determining an apportionment of the live videostream into a plurality of live video stream portions. Scrambling mayfurther include rearranging the plurality of live video stream portionsfrom a first unscrambled arrangement to a second scrambled arrangement.The rearranging may be such that, at least one live video stream portionof the plurality of live video stream portions is in one or more of adifferent position and orientation in the second scrambled arrangementthan in the first unscrambled arrangement.

The method may yet further include displaying to a second user, theplurality of live video stream portions arranged according to the secondscrambled arrangement. The method may also include receiving, from asecond device associated with the second user, an indication of one ormore rearrangements of at least two of the plurality of live videostream portions, and applying the one or more rearrangements to the livevideo stream portions arranged according to the second scrambledarrangement.

The method may further include, responsive to determining that a currentarrangement of the plurality of live video stream portions correspondsto the first unscrambled arrangement, modifying a communicationsfunctionality between the first user and the second user based on thelive video stream being unscrambled by the second user. For example, afee normally assessed for facilitating communications between the firstand second user may be waived or reduced.

According to an example implementation, another method is provided. Themethod may include receiving an indication of a live video stream. Thelive video stream may be received from a first device associated with afirst user. The method may further include defining instructions forscrambling the live video stream. The instructions for scrambling thelive video stream may include instructions for apportioning of the livevideo stream into a plurality of live video stream portions, andinstructions for effecting a rearrangement, from a first unscrambledarrangement of the plurality of live video stream portions, to a secondscrambled arrangement of the plurality of live video stream portions. Atleast one live video stream portion may be arranged in a differentposition or orientation in the second scrambled arrangement as comparedto the first unscrambled arrangement;

The method may yet further include outputting the instructions foreffecting the rearrangement of the plurality of live video streamportions. The instructions for effecting the rearrangement may be outputto a second device associated with a second user.

The method may also include receiving an indication of one or moremodifications to the rearrangement. The indication of the one or moremodifications may be received from the device associated with the seconduser. The method may further include, responsive to determining that theone or more modifications to the rearrangement of the plurality of livevideo stream portions correspond to the first unscrambled arrangement,modifying a communications functionality between the first device andthe second device based on the live video stream being unscrambled bythe second user. For example, a fee normally assessed for facilitatingcommunications between the first and second user may be waived orreduced.

According to some example implementations, various systems are provided.Each system may include a computing device, and a memory operativelycoupled to the computing device and configured for storing data andinstructions that may be executed by the computing device. Whenexecuted, the respective system may be caused to perform a methodsubstantially similar to one the methods described hereinabove.

According to additional example implementations, various computerprogram products are provided. Each computer program product may includeor be embodied in a non-transitory computer readable medium. Therespective computer readable medium may store instructions that, whenexecuted by at least one processor in a system, cause the system toperform a method substantially similar to one of the methods describedhereinabove.

Other implementations, features, and aspects of the disclosed technologyare described in detail herein and are considered a part of the claimeddisclosed technology. Other implementations, features, and aspects maybe understood with reference to the following detailed description,accompanying drawings, and claims.

BRIEF DESCRIPTION OF THE FIGURES

Reference will now be made to the accompanying figures and flowdiagrams, which are not necessarily drawn to scale, and wherein:

FIG. 1 depicts a block diagram of illustrative computing devicearchitecture 100, according to an example implementation.

FIGS. 2A-B are schematic diagrams 200, 220 of systems for gamifyingreal-time network communications between users, according to an exampleimplementation.

FIGS. 3A-D depict scrambling 300 of a live video stream 301, accordingto an example implementation.

FIG. 4 includes FIGS. 4A-E and depicts unscrambling 400 of a live videostream, according to an example implementation.

FIG. 5 includes FIGS. 5A-E and depicts unscrambling 500 of another livevideo stream, according to an example implementation.

FIG. 6 includes FIGS. 6A-B and depicts various rearrangements of livevideo stream portions, according to an example implementation.

FIG. 7 depicts a flow diagram 700 of a method, according to an exampleimplementation.

FIG. 8 depicts a flow diagram 800 of another method, according to anexample implementation.

DETAILED DESCRIPTION

Implementations of the disclosed technology include techniques forgamifying real-time network communications between users. For example,one implementation may modify a fee imposed by a third party forfacilitating real-time communications between two users responsive tothe solving of a video puzzle.

In the following description, the disclosed technology is describedprimarily in regards to modifying network communications functionalitybased on the solving of a sliding video puzzle. However, the techniquesdisclosed herein may be applicable to various other forms ofcommunications and digital tasks, and the incorporation of game-likecontent therewith.

Some implementations of the disclosed technology will be described morefully hereinafter with reference to the accompanying drawings. Thedisclosed technology may, however, be embodied in many different formsand should not be construed as limited to the implementations set forthherein.

In the following description, numerous specific details are set forth.However, it is to be understood that implementations of the disclosedtechnology may be practiced without these specific details. In otherinstances, well-known methods, structures, and techniques have not beenshown in detail in order not to obscure an understanding of thisdescription. References to “one implementation,” “an implementation,”“example implementation,” “some implementations,” “certainimplementations,” “various implementations,” etc., indicate that theimplementation(s) of the disclosed technology so described may include aparticular feature, structure, or characteristic, but not everyimplementation necessarily includes the particular feature, structure,or characteristic. Further, repeated use of the phrase “in oneimplementation” does not necessarily refer to the same implementation,although it may.

Throughout the specification and the claims, the following terms take atleast the meanings explicitly associated herein, unless the contextclearly dictates otherwise. The term “or” is intended to mean aninclusive “or.” Further, the terms “a,” “an,” and “the” are intended tomean one or more unless specified otherwise or clear from the context tobe directed to a singular form.

Unless otherwise specified, the use of the ordinal adjectives “first,”“second,” “third,” etc., to describe a common object, merely indicatethat different instances of like objects are being referred to, and arenot intended to imply that the objects so described must be in a givensequence, either temporally, spatially, in ranking, or in any othermanner.

In some instances, a computing device may be referred to as a mobiledevice, mobile computing device, a mobile station (MS), terminal,cellular phone, cellular handset, personal digital assistant (PDA),smartphone, wireless phone, organizer, handheld computer, desktopcomputer, laptop computer, tablet computer, set-top box, television,appliance, game device, medical device, display device, or some otherlike terminology. In other instances, a computing device may be aprocessor, controller, or a central processing unit (CPU). In yet otherinstances, a computing device may be a set of hardware components.

A presence-sensitive input device as discussed herein, may be a devicethat accepts input by the proximity of a finger, a stylus, or an objectnear the device. A presence-sensitive input device may also be a radioreceiver (for example, a WiFi receiver) and processor which is able toinfer proximity changes via measurements of signal strength, signalfrequency shifts, signal to noise ratio, data error rates, and otherchanges in signal characteristics. A presence-sensitive input device mayalso detect changes in an electric, magnetic, or gravity field.

A presence-sensitive input device may be combined with a display toprovide a presence-sensitive display. For example, a user may provide aninput to a computing device by touching the surface of apresence-sensitive display using a finger. In another exampleimplementation, a user may provide input to a computing device bygesturing without physically touching any object. For example, a gesturemay be received via a video camera or depth camera.

In some instances, a presence-sensitive display may have two mainattributes. First, it may enable a user to interact directly with whatis displayed, rather than indirectly via a pointer controlled by a mouseor touchpad. Secondly, it may allow a user to interact without requiringany intermediate device that would need to be held in the hand. Suchdisplays may be attached to computers, or to networks as terminals. Suchdisplays may also play a prominent role in the design of digitalappliances such as a personal digital assistant (PDA), satellitenavigation devices, mobile phones, and video games. Further, suchdisplays may include a capture device and a display.

Various aspects described herein may be implemented using standardprogramming or engineering techniques to produce software, firmware,hardware, or any combination thereof to control a computing device toimplement the disclosed subject matter. A computer-readable medium mayinclude, for example: a magnetic storage device such as a hard disk, afloppy disk or a magnetic strip; an optical storage device such as acompact disk (CD) or digital versatile disk (DVD); a smart card; and aflash memory device such as a card, stick or key drive, or embeddedcomponent. Additionally, it should be appreciated that a carrier wavemay be employed to carry computer-readable electronic data includingthose used in transmitting and receiving electronic data such aselectronic mail (e-mail) or in accessing a computer network such as theInternet or a local area network (LAN). Of course, a person of ordinaryskill in the art will recognize many modifications may be made to thisconfiguration without departing from the scope or spirit of the claimedsubject matter.

Various systems, methods, and computer-readable mediums may be utilizedfor gamifying real-time network communications between users and willnow be described with reference to the accompanying figures.

FIG. 1 depicts a block diagram of illustrative computing devicearchitecture 100, according to an example implementation. Certainaspects of FIG. 1 may be embodied in a computing device (for example, adedicated server computer or a mobile computing device). As desired,embodiments of the disclosed technology may include a computing devicewith more or less of the components illustrated in FIG. 1. It will beunderstood that the computing device architecture 100 is provided forexample purposes only and does not limit the scope of the variousembodiments of the present disclosed systems, methods, andcomputer-readable mediums.

The computing device architecture 100 of FIG. 1 includes a CPU 102,where computer instructions are processed; a display interface 106 thatacts as a communication interface and provides functions for renderingvideo, graphics, images, and texts on the display. According to certainsome embodiments of the disclosed technology, the display interface 106may be directly connected to a local display, such as a touch-screendisplay associated with a mobile computing device. In another exampleembodiment, the display interface 106 may be configured for providingdata, images, and other information for an external/remote display thatis not necessarily physically connected to the mobile computing device.For example, a desktop monitor may be utilized for mirroring graphicsand other information that is presented on a mobile computing device.According to certain some embodiments, the display interface 106 maywirelessly communicate, for example, via a Wi-Fi channel or otheravailable network connection interface 112 to the external/remotedisplay.

In an example embodiment, the network connection interface 112 may beconfigured as a communication interface and may provide functions forrendering video, graphics, images, text, other information, or anycombination thereof on the display. In one example, a communicationinterface may include a serial port, a parallel port, a general purposeinput and output (GPIO) port, a game port, a universal serial bus (USB),a micro-USB port, a high definition multimedia (HDMI) port, a videoport, an audio port, a Bluetooth port, a near-field communication (NFC)port, another like communication interface, or any combination thereof.

The computing device architecture 100 may include a keyboard interface104 that provides a communication interface to a keyboard. In oneexample embodiment, the computing device architecture 100 may include apresence-sensitive display interface 107 for connecting to apresence-sensitive display. According to certain some embodiments of thedisclosed technology, the presence-sensitive display interface 107 mayprovide a communication interface to various devices such as a pointingdevice, a touch screen, a depth camera, etc. which may or may not beassociated with a display.

The computing device architecture 100 may be configured to use an inputdevice via one or more of input/output interfaces (for example, thekeyboard interface 104, the display interface 106, the presencesensitive display interface 107, network connection interface 112,camera interface 114, sound interface 116, etc.) to allow a user tocapture information into the computing device architecture 100. Theinput device may include a mouse, a trackball, a directional pad, atrack pad, a touch-verified track pad, a presence-sensitive track pad, apresence-sensitive display, a scroll wheel, a digital camera, a digitalvideo camera, a web camera, a microphone, a sensor, a smartcard, and thelike. Additionally, the input device may be integrated with thecomputing device architecture 100 or may be a separate device. Forexample, the input device may be an accelerometer, a magnetometer, adigital camera, a microphone, and an optical sensor.

Example embodiments of the computing device architecture 100 may includean antenna interface 110 that provides a communication interface to anantenna; a network connection interface 112 that provides acommunication interface to a network. According to certain embodiments,a camera interface 114 is provided that acts as a communicationinterface and provides functions for capturing digital images from acamera or other image/video capture device. According to certainembodiments, a sound interface 116 is provided as a communicationinterface for converting sound into electrical signals using amicrophone and for converting electrical signals into sound using aspeaker. According to example embodiments, a random access memory (RAM)118 is provided, where computer instructions and data may be stored in avolatile memory device for processing by the CPU 102.

According to an example embodiment, the computing device architecture100 includes a read-only memory (ROM) 120 where invariant low-levelsystem code or data for basic system functions such as basic input andoutput (I/O), startup, or reception of keystrokes from a keyboard arestored in a non-volatile memory device. According to an exampleembodiment, the computing device architecture 100 includes a storagemedium 122 or other suitable type of memory (e.g., RAM, ROM,programmable read-only memory (PROM), erasable programmable read-onlymemory (EPROM), electrically erasable programmable read-only memory(EEPROM), magnetic disks, optical disks, floppy disks, hard disks,removable cartridges, flash drives), where the files include anoperating system 124, application programs 126 (including, for example,a web browser application, a widget or gadget engine, and or otherapplications, as necessary) and data files 128 are stored. According toan example embodiment, the computing device architecture 100 includes apower source 130 that provides an appropriate alternating current (AC)or direct current (DC) to power components. According to an exampleembodiment, the computing device architecture 100 includes a telephonysubsystem 132 that allows the device 100 to transmit and receive soundover a telephone network. The constituent devices and the CPU 102communicate with each other over a bus 134.

According to an example embodiment, the CPU 102 has appropriatestructure to be a computer processor. In one arrangement, the CPU 102may include more than one processing unit. The RAM 118 interfaces withthe computer bus 134 to provide quick RAM storage to the CPU 102 duringthe execution of software programs such as the operating systemapplication programs, and device drivers. More specifically, the CPU 102loads computer-executable process steps from the storage medium 122 orother media into a field of the RAM 118 in order to execute softwareprograms. Data may be stored in the RAM 118, where the data may beaccessed by the computer CPU 102 during execution. In one exampleconfiguration, the device architecture 100 includes at least 125 MB ofRAM, and 256 MB of flash memory.

The storage medium 122 itself may include a number of physical driveunits, such as a redundant array of independent disks (RAID), a floppydisk drive, a flash memory, a USB flash drive, an external hard diskdrive, thumb drive, pen drive, key drive, a High-Density DigitalVersatile Disc (HD-DVD) optical disc drive, an internal hard disk drive,a Blu-Ray optical disc drive, or a Holographic Digital Data Storage(HDDS) optical disc drive, an external mini-dual in-line memory module(DIMM) synchronous dynamic random access memory (SDRAM), or an externalmicro-DIMM SDRAM. Such computer readable storage media allow a computingdevice to access computer-executable process steps, application programsand the like, stored on removable and non-removable memory media, tooff-load data from the device or to upload data onto the device. Acomputer program product, such as one utilizing a communication systemmay be tangibly embodied in storage medium 122, which may comprise amachine-readable storage medium.

According to one example embodiment, the term computing device, as usedherein, may be a CPU, or conceptualized as a CPU (for example, the CPU102 of FIG. 1). In this example embodiment, the computing device may becoupled, connected, or in communication with one or more peripheraldevices, such as display, camera, speaker, or microphone.

In some embodiments of the disclosed technology, the computing devicemay include any number of hardware or software applications that areexecuted to facilitate any of the operations. In some embodiments, oneor more I/O interfaces may facilitate communication between thecomputing device and one or more input/output devices. For example, auniversal serial bus port, a serial port, a disk drive, a CD-ROM drive,or one or more user interface devices, such as a display, keyboard,keypad, mouse, control panel, touch screen display, microphone, etc.,may facilitate user interaction with the computing device. The one ormore I/O interfaces may be utilized to receive or collect data and/oruser instructions from a wide variety of input devices. Received datamay be processed by one or more computer processors as desired invarious embodiments of the disclosed technology and/or stored in one ormore memory devices.

One or more network interfaces may facilitate connection of thecomputing device inputs and outputs to one or more suitable networks orconnections; for example, the connections that facilitate communicationwith any number of sensors associated with the system. The one or morenetwork interfaces may further facilitate connection to one or moresuitable networks; for example, a local area network, a wide areanetwork, the Internet, a cellular network, a radio-frequency network, aBluetooth-enabled network, a Wi-Fi-enabled network, a satellite-basednetwork, any wired network, any wireless network, etc., forcommunication with external devices or systems.

Example Communications Systems

FIGS. 2A-B are schematic diagrams 200, 220 of systems for gamifyingreal-time network communications between users, according to an exampleimplementation. As shown in FIG. 2A, network communications may beconducted between a first user 201 and a second user 211. The first usermay engage in communications through a first network device, and thesecond user through a second network device. In an exemplary embodiment,one or both network devices may be, comprise, or correspond to arespective computing device. In some embodiments, the respectivecomputing device may be associated with one or more portions of thecomputer architecture illustrated in FIG. 1.

The network devices may be connected by or through a network, such asthe Internet or a local area network (LAN). In some implementations, aserver device 206 or other intermediary may facilitate communicationstransmitted between the first and second network devices. For exampleand not limitation, the server device may host or support a video-chatservice. The first user 201 may initiate a video-chat session with thesecond user 211 by engaging the video-chat service. One of skill in theart will recognize that the server device may be one or more computingdevices and associated infrastructure (e.g., a network). In someimplementations, the server device may be or include a dedicatedphysical server. In another implementation, the server device may be avirtual server, for example, that is hosted on a cloud-computingplatform.

The server device 206 may provide various levels of support facilitatingcommunications between the network devices. In some implementations,many or all communications between the first network device and secondnetwork device may be routed through the server device. Thus, a chatrequest and acceptance, and corresponding video stream data may berouted through or modified at the server device 206. In anotherimplementation, the server may at least partially manage communicationbetween the network devices; however, the live video stream data may notpass through the server. Instead, a first network device may direct datadirectly to a second network device and vice versa. Accordingly, atleast a portion of the modification of the live video stream data mayoccur at one or more of the first or second network devices. In somesuch implementations, management of communications between the networkdevices may occur at the network devices without the involvement of aserver device or other intermediary.

As shown in FIG. 2B, network communications may be also conductedbetween a first user 201 and a plurality of other users 221-224. In someimplementations, a live video stream for a first network device may bebroadcast, multicast, or otherwise transmitted to a plurality of othernetwork devices. As previously described herein, the network devices maycommunicate in a P2P, client-server, or hybrid fashion.

According to certain embodiments, a first user 201 may engage in avideo-chat session with a second user 211. Accordingly, a first livevideo stream recorded by an image capture device associated with a firstnetwork device may be sent at the first user's instruction to the seconduser. The second user may receive and view the first live video streamat a display associated with a second network device.

In some implementations, the first live video stream may be modifiedbefore viewing by the second user. For example, the live video streammay be scrambled. FIGS. 3A-D depict scrambling 300 of a live videostream 301, according to an example implementation. As shown in FIGS.3A-D, live video stream 301 may be apportioned into a plurality of livevideo stream portions. In one implementation, a grid 302 may be appliedto the live video stream 301 such that each live video stream portion322 of the plurality of live video stream portions represents a cell 312of the grid 302. Due to limitations of the current patent applicationsubmission format, each live video stream and portions thereof arerepresented in the drawings herein by permutations of a single (still)image. However, one of skill in the art will recognize the techniquesdescribed herein as being applicable to videos, animations, imagestreams, and other dynamic visual media.

As shown in FIG. 3C, the plurality of live video stream portions may beassociated with a first unscrambled arrangement 303C. As shown in FIG.3D, the live video stream portions may be rearranged to create a secondscrambled arrangement 303D. In some implementations, rearranging aplurality of live video stream portions may comprise effecting atranslation or movement of a live video stream portion from a firstposition in an arrangement to a second position. For example, labeledlive video stream portion 322 is in a different position in FIG. 3C thanin FIG. 3D. In an example implementation, a position of a live videostream portion may be changed by swapping positions in the arrangementwith another live video stream portion. In some implementations, a livevideo stream portion may also be inverted (see, e.g., 601A between FIGS.6A and 6B), rotated (see, e.g., 601B between FIGS. 6A and 6B), orotherwise manipulated to create a scrambled arrangement.

In some implementations, apportioning or rearranging of the first livevideo stream may be performed at the first network device, or anintermediary such as the server device 306. In another implementation,apportioning or rearranging may not be performed until the live videostream reaches a terminal network device (e.g., the second networkdevice). For example, the first network device or server device mayinstead define instructions to be forwarded to another computing devicefor effecting apportioning or rearranging of the live video stream.Accordingly, a server device or other intermediary can defineinstructions for creating a scrambled arrangement without actuallyreceiving the live video stream. Instead, in some implementations, theinstructions may be defined based on an indication of a live videostream such as a size, resolution, or aspect ratio.

The first live video stream may be displayed or otherwise presented tothe second user 211 in a scrambled arrangement. As shown throughout thefigures, individual live video stream portions may be indicated ordesignated within an arrangement by adding a visual effect, such asbeveled edges. According to certain implementations, the second user mayattempt to unscramble the first live video stream portion bymanipulating the scrambled arrangement. In some implementations, thescrambled arrangement may be presented as a live video puzzle.

According to certain implementations, creating a video puzzle from avideo stream instead of a static image may significantly increase adifficulty associated with unscrambling, or solving, a correspondingscrambled arrangement. As a person (e.g., the first user 201) or objectfeatured in the video stream shifts or moves, the image in each videostream portion may change accordingly. Thus, the second user may bepresented with a “moving” target. Moreover, as the second user is unableto directly control the first user's movements, the second user may beunable to predict how a video puzzle based on a live video stream willdynamically change. Thus, solving a live video puzzle may be consideredakin to solving a jigsaw puzzle where the edges of the pieces changeunpredictably.

As shown in FIGS. 4-5, the video puzzle may be a sliding video puzzle. Asliding block puzzle is a type of tour puzzle that challenges a playerto slide pieces of the puzzle along certain fixed routes to establish adesired end-configuration (e.g., an unscrambled arrangement of pieces).In contrast to other tour puzzles, a sliding block puzzle prohibitslifting a piece off of the board. Accordingly, at each iteration, anyindividual puzzle piece is generally limited to single possible move, ifany.

A sliding block puzzle may be simulated by blacking out (or omittingfrom display) a live video portion 401 from the arrangement, as shown inFIGS. 4A-4D. Other live video portions may be switched with theblacked-out live video portion, in effect, simulating the movement ofanother live video portion into a vacant slot.

FIGS. 4A-4D depict the unscrambling, or solving, of a video puzzle atvarious stages. In some implementations, the second user may bepresented with an interface for manipulating the arrangement of livevideo portions. In an example implementation, a user may move or swaplive video stream portions by dragging and dropping a live video streamportion to a new position or location. The user may also rotate orinvert live video portions, for example, by double- or triple-clicking.

According to certain implementations, the second user may rearrange theplurality of live video portions until a current arrangement matches theoriginal unscrambled live video stream. For example, the user-effectedarrangement depicted in FIG. 4D corresponds to the original unscrambledarrangement depicted in FIG. 4E. In some implementations, once the videopuzzle has been solved, any blacked-out or omitted live video streamportions may be revealed to present the original unscrambled live videostream, as shown in FIG. 4E.

In some implementations, the first user may be able to track theprogress of the second user in solving the video puzzle. For example, anindication of the minimum number of correct moves remaining to solve thepuzzle, or the current state of the puzzle itself, may be displayed tothe first user.

According to certain implementations, communications functionality maybe enabled, modified, or disabled once the video puzzle has been solved.For example, a chat service or other facilitator may normally charge afee for hosting communications between the first user and second user.In some implementations, the fee may be waived or reduced in response tothe video puzzle being solved. In another implementation, the seconduser 211 may be able to view the scrambled video stream of the firstuser 201, but may be unable to send or receive communications with thefirst user until the video puzzle is solved. Verbal or textualcommunications may then be enabled once the video puzzle has beensolved.

According to certain implementations, a first user 201 and second user211 may both direct live video streams to each other. In other words, avideo chat may include a two-way exchange of live video streams. In somesuch implementations, communications functionality may not be modifieduntil video puzzles based on both live video streams have been solved bytheir recipients. In another implementation, however, only one of thelive video streams may be solved before the communications functionalityis modified.

As previously described, network communications may be also conductedbetween a first user 201 and a plurality of other users 221-224. In somesuch implementations, each of the plurality of other users may receive asame video puzzle based on a live video stream, or an indicationthereof. In another implementation, two or more other users may receivedifferent (e.g., scrambled in various arrangements) video puzzles basedon a same live video stream. In some implementations, communicationsfunctionality may be modified between the first user and a respectiveuser of the plurality of other users responsive the corresponding videopuzzle being solved by the respective user. Thus, in one example,respective recipient users engaged in a video chat session with a samefirst user may be able to have their respective communications feeswaived as a corresponding video puzzle is solved.

According to certain implementations, a second user 211 or otherreceiving user may request or be provided with a live video stream froma source other than a first user 201. For example, the second user mayrequest a live video stream from a content provider such as a sportsnetwork. In response, the second user may receive a video puzzle of alive sportscast. In some implementations, the second user may be chargedfor the live video stream until the video stream is unscrambled. Othersuitable sources of streaming live video content will be apparent to oneof skill in the art.

FIGS. 5A-E depict the unscrambling, or solving, of another video puzzleat various stages. The video puzzle depicted in FIGS. 5A-E comprisesmore live video portions than the video puzzled depicted in FIGS. 4A-E.According to certain implementations, a number of live video portions inan apportionment may be a predetermined number. In some implementations,the number may be at least partially determined by the computing devicedefining or performing the apportionment. In another implementation, oneor more of the originating user associated with the live video stream ora receiving user may select or otherwise influence the number of livevideo portions for the puzzle.

In some implementations, a scrambled arrangement may be associated witha level of difficulty. The level of difficulty may be based, in part, onthe number of live video portions therein. The difficulty may also bebased on a degree of displacement from the initial unscrambled livevideo stream. In some implementations, a rearrangement may be limited totranslations. In another implementation, a rearrangement may alsoinclude rotations or inversions. Various aspects of a level ofdifficulty may be determined automatically based on qualities of a livevideo stream to be apportioned, such as a resolution, color depth, orbitrate. In other implementations, the level of difficulty, and otherdetails, may be selected or influenced by one or more the originatinguser and receiving user.

According to certain implementations, a time limit may be associatedwith a video puzzle. For example, the second user may have only twominutes to solve the video puzzle before a predetermined event occurs.In one implementation, the video puzzle may reset to its initialscrambled arrangement or a new scrambled arrangement upon expiration oftime. In another implementation, communications between the first userand second user may be severed or otherwise modified. The first user andsecond user may then try to reestablish communication.

Other constraints may be placed on the solving of the video puzzle. Forexample, the second user may be limited to a predetermined number ofmoves, or other manipulations of the scrambled arrangement of live videostream portions. Once the number of moves is exhausted, a number ofpredetermined events may be triggered as previously described herein.Imposing constraints on the video puzzle may “raise the stakes” andcreates a sense of urgency for the participating users. Other methods ofconstraining interaction with the video puzzle are contemplated andwithin the scope of this disclosure.

Flow Diagrams

FIG. 7 depicts a flow diagram 700 of a method, according to an exampleimplementation. As shown in FIG. 7, the method 700 starts in block 702,and, according to an example implementation, includes receiving, from afirst device associated with a first user, a live video stream. In block704, the method 700 includes determining, by a computing device, anapportionment of the live video stream into a plurality of live videostream portions. In block 706, the method 700 includes rearranging theplurality of live video stream portions, from a first unscrambledarrangement to a second scrambled arrangement, wherein at least one livevideo stream portion of the plurality of live video stream portions isin one or more of a different position and orientation in the secondscrambled arrangement than in the first unscrambled arrangement. Inblock 708, the method 700 includes outputting, for display to a seconduser, the plurality of live video stream portions arranged according tothe second scrambled arrangement.

In block 710, the method 700 includes receiving, from a second deviceassociated with the second user, an indication of one or morerearrangements of at least two of the plurality of live video streamportions, and applying the one or more rearrangements to the live videostream portions arranged according to the second scrambled arrangement.In block 712, the method 700 includes, responsive to determining, that acurrent arrangement of the plurality of live video stream portionscorresponds to the first unscrambled arrangement, modifying acommunications functionality between the first user and the second userbased on the live video stream being unscrambled by the second user.

FIG. 8 depicts a flow diagram 800 of another method, according to anexample implementation. As shown in FIG. 8, the method 800 starts inblock 802, and, according to an example implementation, includesreceiving, from a first device associated with a first user, anindication of a live video stream. In block 804, the method 800 includesdefining, by a computing device, instructions for apportioning of thelive video stream into a plurality of live video stream portions. Inblock 806, the method 800 includes defining, by the computing device,instructions for effecting a rearrangement, from a first unscrambledarrangement of the plurality of live video stream portions, to a secondscrambled arrangement of the plurality of live video stream portions,wherein at least one live video stream portion is in a differentposition or orientation in the second scrambled arrangement than in thefirst unscrambled arrangement.

In block 808, the method 800 includes outputting, to a second deviceassociated with a second user, the instructions for effecting therearrangement of the plurality of live video stream portions. In block810, the method 800 includes receiving, from the device associated withthe second user, an indication of one or more modifications to therearrangement. In block 812, the method 800 includes, responsive todetermining, that the one or more modifications to the rearrangement ofthe plurality of live video stream portions correspond to the firstunscrambled arrangement, modifying a communications functionalitybetween the first device and the second device based on the live videostream being unscrambled by the second user.

It will be understood that the various steps shown in FIG. 7-8 areillustrative only, and that steps may be removed, other steps may beused, or the order of steps may be modified.

Certain implementations of the disclosed technology are described abovewith reference to block and flow diagrams of systems, methods, orcomputer program products according to example implementations of thedisclosed technology. It will be understood that one or more blocks ofthe block diagrams and flow diagrams, and combinations of blocks in theblock diagrams and flow diagrams, respectively, may be implemented bycomputer-executable program instructions. Likewise, some blocks of theblock diagrams and flow diagrams may not necessarily need to beperformed in the order presented, or may not necessarily need to beperformed at all, according to some implementations of the disclosedtechnology.

These computer-executable program instructions may be loaded onto ageneral-purpose computer, a special-purpose computer, a processor, orother programmable data processing apparatus to produce a particularmachine, such that the instructions that execute on the computer,processor, or other programmable data processing apparatus create meansfor implementing one or more functions specified in the flow diagramblock or blocks. These computer program instructions may also be storedin a computer-readable memory that may direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meansthat implement one or more functions specified in the flow diagram blockor blocks. As an example, implementations of the disclosed technologymay provide for a computer program product, comprising a computer-usablemedium having a computer-readable program code or program instructionsembodied therein, said computer-readable program code adapted to beexecuted to implement one or more functions specified in the flowdiagram block or blocks. The computer program instructions may also beloaded onto a computer or other programmable data processing apparatusto cause a series of operational elements or steps to be performed onthe computer or other programmable apparatus to produce acomputer-implemented process such that the instructions that execute onthe computer or other programmable apparatus provide elements or stepsfor implementing the functions specified in the flow diagram block orblocks.

Accordingly, blocks of the block diagrams and flow diagrams supportcombinations of means for performing the specified functions,combinations of elements or steps for performing the specified functionsand program instruction means for performing the specified functions. Itwill also be understood that each block of the block diagrams and flowdiagrams, and combinations of blocks in the block diagrams and flowdiagrams, may be implemented by special-purpose, hardware-based computersystems that perform the specified functions, elements or steps, orcombinations of special-purpose hardware and computer instructions.

While certain implementations of the disclosed technology have beendescribed in connection with what is presently considered to be the mostpractical and various implementations, it is to be understood that thedisclosed technology is not to be limited to the disclosedimplementations, but on the contrary, is intended to cover variousmodifications and equivalent arrangements included within the scope ofthe appended claims. Although specific terms are employed herein, theyare used in a generic and descriptive sense only and not for purposes oflimitation.

This written description uses examples to disclose certainimplementations of the disclosed technology, including the best mode,and also to enable any person skilled in the art to practice certainimplementations of the disclosed technology, including making and usingany devices or systems and performing any incorporated methods. Thepatentable scope of certain implementations of the disclosed technologyis defined in the claims, and may include other examples that occur tothose skilled in the art. Such other examples are intended to be withinthe scope of the claims if they have structural elements that do notdiffer from the literal language of the claims, or if they includeequivalent structural elements with insubstantial differences from theliteral language of the claims.

We claim:
 1. A method comprising: receiving, from a first deviceassociated with a first user, a live video stream; determining, by acomputing device, an apportionment of the live video stream into aplurality of live video stream portions; rearranging the plurality oflive video stream portions, from a first unscrambled arrangement to asecond scrambled arrangement, wherein at least one live video streamportion of the plurality of live video stream portions is in one or moreof a different position and orientation in the second scrambledarrangement than in the first unscrambled arrangement; outputting, fordisplay to a second user, the plurality of live video stream portionsarranged according to the second scrambled arrangement; receiving, froma second device associated with the second user, an indication of one ormore rearrangements of at least two of the plurality of live videostream portions, and applying the one or more rearrangements to the livevideo stream portions arranged according to the second scrambledarrangement; and responsive to determining, that a current arrangementof the plurality of live video stream portions corresponds to the firstunscrambled arrangement, modifying a communications functionalitybetween the first user and the second user based on the live videostream being unscrambled by the second user.
 2. The method of claim 1,wherein modifying the communications functionality comprises modifying afee associated with communications between the first user and seconduser.
 3. The method of claim 1, wherein a fee is associated withcommunications between the first user and the second user, the feewaived or reduced based on the live video stream being unscrambled bythe second user.
 4. The method of claim 1, further comprising updatingthe display of the plurality of live video stream portions to reflectthe one or more rearrangements.
 5. The method of claim 1, wherein theapportionment of the live video stream into the plurality of live videostream portions corresponds to a grid applied to the live video stream,the live video stream portions corresponding to cells of the grid. 6.The method of claim 1, wherein at least one live video stream portion ofthe plurality of live video stream portions is omitted or blacked out inthe second scrambled arrangement of live video stream portions.
 7. Themethod of claim 6, wherein the at least one live video stream portion ofthe plurality of live video stream portions that is omitted or blackedout in the second scrambled arrangement of live video stream portions,is introduced or revealed responsive to determining, that the thirdcurrent arrangement of the plurality of live video stream portionscorresponds to the first unscrambled arrangement.
 8. The method of claim1, wherein at least one live video stream portion of the plurality oflive video stream portions is one or more of rotated and inverted in thesecond scrambled arrangement as compared to first unscrambledarrangement.
 9. The method of claim 1, wherein: the live video stream isa first live video stream directed from the first user to the seconduser; a second live video stream is directed from the second user to thefirst user, and the communications functionality between the first userand the second user is modified responsive to both the first live videostream and the second live video stream being unscrambled.
 10. Themethod of claim 1, wherein the live video stream is output to aplurality of users, and wherein a communications functionality ismodified between the first user and a respective user from the pluralityof users based on the live video stream being unscrambled by therespective user.
 11. A system comprising: at least one processor; atleast one memory operatively coupled to the at least one processor andconfigured for storing data and instructions that, when executed by theprocessor, cause the system to perform a method comprising: receiving,from a first device associated with a first user, a live video stream;determining, by the at least one processor, an apportionment of the livevideo stream into a plurality of live video stream portions; rearrangingthe plurality of live video stream portions, from a first unscrambledarrangement to a second scrambled arrangement, wherein at least one livevideo stream portion of the plurality of live video stream portions isin one or more of a different position and orientation in the secondscrambled arrangement than in the first unscrambled arrangement;outputting, for display to a second user, the plurality of live videostream portions arranged according to the second scrambled arrangement;receiving, from a second device associated with the second user, anindication of one or more rearrangements of at least two of theplurality of live video stream portions, and applying the one or morerearrangements to the live video stream portions arranged according tothe second scrambled arrangement; and responsive to determining, that acurrent arrangement of the plurality of live video stream portionscorresponds to the first unscrambled arrangement, modifying acommunications functionality between the first user and the second userbased on the live video stream being unscrambled by the second user. 12.The system of claim 11, the method further comprising notifying thefirst user that the live video stream has been unscrambled by the seconduser.
 13. The system of claim 11, the method further comprisingproviding an indication of a current arrangement of the plurality oflive video stream portions to the first user.
 14. The system of claim11, wherein the live video stream is unscrambled by the second userwithin a predetermined time limit.
 15. The system of claim 14, whereinthe predetermined time limit is set at least partially by the firstuser.
 16. The system of claim 11, wherein a number of the plurality oflive video stream portions of the apportionment is set at leastpartially by the first user.
 17. The system of claim 11, wherein adifficulty level associated with the second scrambled arrangement is setat least partially by the first user.
 18. A computer program productembodied in a non-transitory computer-readable storage medium havinginstructions encoded thereon that, when executed by a computing device,causes the computing device to perform a method comprising: receiving,from a first device associated with a first user, an indication of alive video stream; defining, by a computing device, instructions forapportioning of the live video stream into a plurality of live videostream portions; defining, by the computing device, instructions foreffecting a rearrangement, from a first unscrambled arrangement of theplurality of live video stream portions, to a second scrambledarrangement of the plurality of live video stream portions, wherein atleast one live video stream portion is in a different position ororientation in the second scrambled arrangement than in the firstunscrambled arrangement; outputting, to a second device associated witha second user, the instructions for effecting the rearrangement of theplurality of live video stream portions; receiving, from the deviceassociated with the second user, an indication of one or moremodifications to the rearrangement; and responsive to determining, thatthe one or more modifications to the rearrangement of the plurality oflive video stream portions correspond to the first unscrambledarrangement, modifying a communications functionality between the firstdevice and the second device based on the live video stream beingunscrambled by the second user.
 19. The computer program product ofclaim 18, wherein the communications functionality is related to verbalcommunication.
 20. The computer program product of claim 18, wherein thecommunications functionality is related to text communication.